//
//  YHOptionTableViewController.h
//  ScriptKill
//
//  Created by 林宁宁 on 2021/4/27.
//  Copyright © 2021 优智汇. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "YHOptionTableViewItem.h"
#import "YHOptionLayoutItemStyles.h"

NS_ASSUME_NONNULL_BEGIN



@interface YHOptionTableViewController : UIViewController

@property (retain, nonatomic, readonly) UITableView * tableView;

@property (retain, nonatomic, readonly) NSArray <YHOptionTableViewItem *> * allOptionList;

- (void)addOptionItem:(YHOptionTableViewItem *)item;
- (void)addOptionItems:(NSArray <YHOptionTableViewItem *>*)items;
- (void)insertOptionItems:(NSArray <YHOptionTableViewItem *>*)items below:(YHOptionTableViewItem *)below;
- (void)removeOptionItem:(YHOptionTableViewItem *)item;
- (void)removeOptionItems:(NSArray <YHOptionTableViewItem *>*)items;
- (void)reloadOptionItem:(YHOptionTableViewItem *)item;
- (void)reloadOptionItems:(NSArray <YHOptionTableViewItem *>*)items;

- (__kindof YHOptionTableViewItem *)filterOptionByID:(NSString *)ID;
- (__kindof YHOptionTableViewItem *)filterOptionByIndex:(NSInteger)index;
- (__kindof YHOptionTableViewItem *)filterOptionByCellType:(NSInteger)cellType;

- (void)cleanAllOptions;

- (void)reloadContentView;

/// 判断所有的条件是否 满足
- (BOOL)isAviableOptionItems;

@end




NS_ASSUME_NONNULL_END
